home *** CD-ROM | disk | FTP | other *** search
/ PCMania 64 / PCMania CD64_1.iso / phy / phy003 / files / articulo.t05 < prev    next >
Encoding:
Text File  |  1997-02-01  |  1.5 KB  |  31 lines

  1. ε                               Low Level (II)π
  2.  
  3.   Los efectos sencillos suelen ser los más graciosos (eso dicen al menos :)
  4. Buscando en nuestros discos hemos encontrado este efecto basado en un virus
  5. que cambia las letras 'δAπ' por 'δOπ' y viceversa produciendo un efecto de
  6. extrañeza en el usuario que tarda en darse cuenta del error ya que no lee los
  7. mensajes de pantalla porque se los sabe de memoria.
  8.   No es un código dificil, ni mucho menos, pero resulta interesante llegar a
  9. comprenderlo ya que juega con puntos en la programación en assembler que de
  10. vez en cuando se olvidan (como la sobrescritura de código, redireccionamiento
  11. de interrupciones, etc).
  12.   Lo primero que se hace es coger y guardar el ΓVIπ de la ΓINT 10hπ utilizando la
  13. INT 21h y almacenandolo directamente en el código del programa para no tener
  14. que hacer un ΓJMP DWORD PTRπ. Luego mete su própio vector de interrupción para
  15. activar su subrutina y se queda residente en memoria. Tambien es de reseñar
  16. la facilidad con que se queda en memoria comparando con lo que se complican la
  17. existencia ciertos programas "profesionales" que se cuelgan a cada 2x3.
  18.   La subrutina que se encarga de manejar la ΓINT 10hπ simplemente comprueba que
  19. se use una de las funciones de escritura en pantalla para ver si tiene que
  20. intercambiar el código del caracter a mostrar para luego regresar al anterior
  21. servicio de interrupción.
  22.   A parte de este pedazo de código hay un regalito que tambien le hemos
  23. estirpado a uno de esos pequeños ingenios electrónicos. Hasta el próximo
  24. número!
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.